---@class TBS.Config
local Config = TBS.CreateSingleton("Config")
--技能显示类型
Config.SkillShowType = {
    none = 0,       --无
    normalAttack = 1,   --普攻
    skill1 = 2,       --技能1
    ultimate = 3,       --大招
}
Config.ActorType = {
    player = 1, --英雄
    boss = 2,   --boss
    leader = 3,  --英雄组，做成一个actor释放组技能
}
--弹道轨迹
Config.BulletPathType = {
    linear = 1,     --直线
    curve = 2,    --曲线
}
Config.EffectType = {
    effect = 1,     --普通特效
    bullet = 2,    --飞行道具
    ultimate = 3,   --大招
    followUI = 4,   --跟随ui
}
Config.EffectMapping = {
    [Config.EffectType.effect] = TBS.EffectBase,
    [Config.EffectType.bullet] = TBS.Bullet,
    [Config.EffectType.ultimate] = TBS.UltimateEffect,
    [Config.EffectType.followUI] = TBS.FollowUIEffect
}
Config.SkillNodeType = {
    effect = 1,     --特效
    action = 2,     --动作
    bullet = 3,    --飞行道具
}
Config.SkillStage = {
    none = 0,
    init = 1,       --初始化
    start = 2,      --前揺
    spell = 3,      --施法
    channelStart = 4,--引导开始
    channelIng = 5,     --引导中
    channelFinished = 6,    --引导结束
    backSwing = 7,          --后摇
    skillEnd = 8,           --结束
}
Config.BattleResultType = {
    bossDie = 1,        --boss挂了
    groupAllDie = 2,    --我方集体挂了
    timeOut = 3,        --超时
    noGroup = 4,        --我方没有成员上阵
}
Config.SkillCallbackType = {
    skillStart = 1,
    skillEnd = 2,
    hitBefore = 3,
    hitAfter = 4,
    attackEffectLoadDone = 5,
    attackFrameEventCallback = 6,
}
--目标类型
--[[Config.SkillTargetChooseType = {
    all = 0,    --所有小组
    one = 1,    --1小组
    two = 2,    --2小组
    three = 3,  --3小组
    four = 4,   --4小组
    boss = 5,   --boss
    preAttackMe = 6, --上回合攻击自己的目标
    self = 7,   --自己
}
--目标类型
Config.SkillTargetChooseSecondType = {
    all = 0,    --所有小组
    one = 1,    --骑士
    two = 2,    --游侠
    three = 3,  --法师
    four = 4,   --战士
    boss = 5,   --辅助
    attack = 6, --刺客
}]]
--技能特效参考位置
Config.EffectPosType = {
    AllGroupCenter = 1,     --全组中心
    Boss = 2,                --boss位置
    curGroupCenter = 3,     --当前组中心
    screenCenter = 4,       --屏幕中心
    caster = 14, --施法者
    target = 15,  --目标者
    fixPos = 16, --固定位置
}
--buff特效参考位置
Config.BuffEffectPosType = {
    AllGroupCenter = 1,     --全组中心
    Boss = 2,                --boss位置
    curGroupCenter = 3,     --当前组中心
    teamPlayer = 4,        --组中的成员
}
--buff 特效 目标
Config.TargetType = {
    caster = 1, --施法者
    target = 2,  --目标者
}
--战报action类型
Config.FightActionType = {
    NONE = 0,
    INIT = 1, --初始化
    ATTACK = 2, --攻击
    --MOVE = 3, --移动
    HIT = 4, --受击
    DAMAGE = 5, --伤害
    --FLY = 6, --飞行
    BUFF = 7, --buff
    --ALTERNATE = 8, --替补
    DEATH = 9, --死亡
    --CHANGE_POINT = 10, --直接设置位置（闪现）
    --ADDITIONAL_STATE = 12, --额外状态
    --INIT_SUMMON = 13, --初始化召唤物，与替补区别开
    --SKILL_PLAY = 15, --播放技能位置
    END = 100, --结束
    ROUND = 101,--回合/出手节点
}
--添加时机
Config.BuffAddTimeType = {
    damageBefore = 0,   --伤害前
    damageAfter = 1,    --伤害后
    skillEnd = -1,      --技能结束
    hit = -2,           --命中
    immediate = -3,     --立即
}
Config.AttackParamType = {
    delayAttack = 1,--追加技能延时执行
}
Config.DamageType = {
    none = 0,--不显示
    normal =1,	--普通
    dodge=2,	--闪避
    crit =3,	--暴击
    immunity=4,	--免疫
    heal = 5,	--治疗
    sp = 6,		--怒气
    shields = 7,--护盾 --跳字吸收

    --resist=1,--抵抗
    --resistHero=2,--玩家抵抗
    --dodgeHero=4,--玩家闪避
    --defense=5,--防御
    --defenseHero=6,--玩家防御
    --block=7,--格挡
    --blockHero=8,--玩家格挡

    poison=9,--中毒
    poisonHero=10,--玩家中毒
    blood=11,--流血
    bloodHero=12,--玩家流血
    crush=13,--压碎
    crushHero=14,--玩家压碎

    normalHurt=15,--对敌人物理伤害
    normalHurtCrit=16,--对敌人物理伤害暴击
    normalElementCrit=17,--相克暴击
    normalHurtMCrit=18,--对敌人法术伤害暴击
    normalCure=19,--通用治疗
    normalCureCrit=20,--通用治疗暴击
    heroHurt=21,--玩家单位受伤
    heroHurtCrit=22,--玩家单位受伤暴击
    elementHurt=23,
}
--region 事件
Config.Event = {
    ActorPosChanged = 1001,
    ActorDead = 1002,
    PlayerReborn = 1003,       --重生了
    CameraPosChanged = 1004,
    PlayerInBattle = 1005,     --玩家进入战斗或退出战斗
    PlayerHpChanged = 1006,     --玩家血量变化
    PlayerWin = 1007,          --玩家胜利
    PlayerStartReborn = 1008,  --开始重生倒计时
    ActorCreate = 1009,       --玩家创建
    ActorDestroy = 1010,     --玩家销毁
    PlayerFight = 1011,       --进入开战状态
    BuffChanged = 1014,       --buff改变
    MineralReward = 1015,     --矿资源获得
    DamageShow = 1016,     --显示伤害数字
    SkillStart = 1017,      --技能释放
    ScreenShake = 1018,     --震屏
    LeaderReleaseSkill = 1019,  --组技能释放
    BossReleaseSkill = 1020,  --boss技能释放
    NeedUIPos = 1021,        --
    GetUIPos = 1022,        --


    BattleLoadingStart = 1101,    --战场开始加载
    BattleReady = 1102,          --战场加载完开始
    BattleLeave = 1103,          --战场卸载
    BattleTimeInit = 1104,       --战场时间
    BattleTimeOut = 1105,        --战场时间已结束
    BattleRestart = 1106,       --战场重置
    BattleLoadDone = 1107,      --加载完毕
    BattleFinished = 1108,      --战斗结束
    BattleTurnStart = 1109,     --回合开始
    BattleTurnEnd = 1110,     --回合结束

}
--endregion 事件